package cn.anecansaitin.whimsy.client.registers;

import cn.anecansaitin.whimsy.Whimsy;
import net.minecraft.core.registries.Registries;
import net.minecraft.sounds.SoundEvent;
import net.neoforged.neoforge.registries.DeferredHolder;
import net.neoforged.neoforge.registries.DeferredRegister;

public class ModSounds {
    public static final DeferredRegister<SoundEvent> SOUNDS = DeferredRegister.create(Registries.SOUND_EVENT, Whimsy.MODID);

    public static final DeferredHolder<SoundEvent, SoundEvent> HAND_CANNON_SHOOT = SOUNDS.register("hand_cannon_shoot", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("hand_cannon_shoot")));
    public static final DeferredHolder<SoundEvent, SoundEvent> HAND_CANNON_RELOAD = SOUNDS.register("hand_cannon_reload", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("hand_cannon_reload")));
    public static final DeferredHolder<SoundEvent, SoundEvent> SEISMIC_SLAM_BEGIN = SOUNDS.register("seismic_slam_begin", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("seismic_slam_begin")));
    public static final DeferredHolder<SoundEvent, SoundEvent> SEISMIC_SLAM_END = SOUNDS.register("seismic_slam_end", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("seismic_slam_end")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_ENEMY_CRASH_WALL = SOUNDS.register("rocket_punch_enemy_crash_wall", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_enemy_crash_wall")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_HIT = SOUNDS.register("rocket_punch_hit", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_hit")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_RECHARGE = SOUNDS.register("rocket_punch_recharge", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_recharge")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_RECHARGE_1 = SOUNDS.register("rocket_punch_recharge_1", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_recharge_1")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_RECHARGE_2 = SOUNDS.register("rocket_punch_recharge_2", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_recharge_2")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_RECHARGE_3 = SOUNDS.register("rocket_punch_recharge_3", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_recharge_3")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_RECHARGE_4 = SOUNDS.register("rocket_punch_recharge_4", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_recharge_4")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_RECHARGE_5 = SOUNDS.register("rocket_punch_recharge_5", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_recharge_5")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_RECHARGE_6 = SOUNDS.register("rocket_punch_recharge_6", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_recharge_6")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_RECHARGE_7 = SOUNDS.register("rocket_punch_recharge_7", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_recharge_7")));
    public static final DeferredHolder<SoundEvent, SoundEvent> ROCKET_PUNCH_START = SOUNDS.register("rocket_punch_start", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("rocket_punch_start")));
    public static final DeferredHolder<SoundEvent, SoundEvent> POWER_BLOCK = SOUNDS.register("power_block", () -> SoundEvent.createVariableRangeEvent(Whimsy.resource("power_block")));
}
